package cn.edu.gzhmt.goods.service.impl;

import java.util.List;

import cn.edu.gzhmt.goods.dao.IGoodsDao;
import cn.edu.gzhmt.goods.dao.impl.GoodsDaoImpl;
import cn.edu.gzhmt.goods.domain.Goods;
import cn.edu.gzhmt.goods.service.IGoodsService;

/**
 * 商品service层实现类
 * @author azhuo
 *
 */
public class GoodsServiceImpl implements IGoodsService {

	private IGoodsDao goodsDao = new GoodsDaoImpl();

	/**
	 * 查询所有商品
	 */
	public List<Goods> findAllGoods() {
		
		return goodsDao.findAll();
	}

	/**
	 * 通过id加载商品
	 */
	public Goods loadGoods(String gid) {
		
		return goodsDao.findById(gid);
	}

	/**
	 * 通过名称查询商品
	 */
	public List<Goods> findGoodsByName(String gname) {
		
		return goodsDao.findByName(gname);
	}

	/**
	 * 通过 分类id 查询商品
	 */
	public List<Goods> findGoodsByCategoryId(String cid) {
		return goodsDao.findByCategoryId(cid);
	}

	/**
	 * 主页进行 按分类 加载商品
	 * 主页加载，只加载前6行
	 */
	public List<Goods> findGoodsByMain(String cid) {
		int start = 0;
		int pageSize = 6;
		return goodsDao.findByCategoryIdLimit(cid, start, pageSize);
	}

	/**
	 * 按分类查询商品
	 */
	public List<Goods> findGoodsByCategory(String cid) {
		return goodsDao.findGoodsByCid(cid);
	}

	/**
	 * 加载热卖商品
	 * 
	 * promote : 首页宣传商品，0：默认、1：轮播图(前3条)、2：热卖商品(前5条)、3：推荐商品
	 */
	public List<Goods> loadHotGoods() {
		
		String promote = "2";
		int limit = 5;
		List<Goods> goodsList = goodsDao.findGoodsByPromote(promote, limit);
		
		return goodsList;
	}

	/**
	 * 加载推荐商品
	 */
	public List<Goods> recommendGoods() {
		String promote = "3";
		int limit = 4;
		List<Goods> goodsList = goodsDao.findGoodsByPromote(promote, limit);
		return goodsList;
	}
	
	
	
}
